<?php
/*
 *   命名规则   前缀加   f_arr_
 */

/**
 * 将单层数组转化为select使用的数组
 * 
 * @param array $aOne
 * @return array
 */
function f_arr_toforselect($aOne){
	$aIdName = array();
	foreach ($aOne as $id => $name){
		$aIdName[$id] = array(
			'id' => $id,
			'name' => $name,
		);
	}
	return $aIdName;
}

/**
 * 将对象转化为数组
 * 
 * @param object $d
 * @return array
 */
function f_arr_byObject($d) {
	if (is_object($d)) {
		$d = get_object_vars($d);
	}
	if (is_array($d)) {
		return array_map(__FUNCTION__, $d);
	} else {
		return $d;
	}
}

/**
 * 将数组转化为对象
 * 
 * @param array $d
 * @return object
 */
function f_arr_toObject($d) {
	if (is_array($d)) {
		return (object) array_map(__FUNCTION__, $d);
	} else {
		return $d;
	}
}

/**
 * 将json字符串转化为数组
 * 
 * @param string $json
 * @return array
 */
function f_arr_byJson($json){
	// 转码会导致转换失败
	// $resp = mb_convert_encoding( $resp, 'gbk','utf-8');
	
	// 回车换行会导致转化失败
	//$resp = str_replace(PHP_EOL, '', $resp);
	
	// 反斜杠会导致转化失败
	//$resp = str_replace('/', '\/', $resp);
	// echo $resp;
	
	// 
	$b = json_decode($json, true);
	return $b;
}